using System;

namespace SharpMud.Text.Matching
{
	/// <summary>
	/// These constant values define what ways that the StringMatcher may compare a given pattern to a given string
	/// </summary>
	public enum StringMatchingType
	{
        /// <summary>
        /// Will cause an error is used, explicitly or implicitly
        /// </summary>
        None = 0,

		/// <summary>
		/// Designates string comparing to be done with pattern matching identical to VB's 'Like' operator
		/// </summary>
		StringLike			=	1,
		/// <summary>
		/// Designates string comparing to be done with pattern matching identical to VB's 'Like' operator, with Binary compare
		/// </summary>
		StringLikeBinary	=	2,
		/// <summary>
		/// Designates string comparing to be done with pattern matching identical to VB's 'Like' operator, with Textual compare
		/// </summary>
		StringLikeTextual	=	3,
		/// <summary>
		/// Designates string comparing to be based on regular expression evaluation
		/// </summary>
		RegularExpression	=	4,
		/// <summary>
		/// Designates string comparing to be based on regular expression evaluation
		/// </summary>
		RegEx = RegularExpression,
		/// <summary>
		/// Designates string comparing to be done with pattern matching identical to VB's 'Like' operator
		/// </summary>
		Like = StringLike,
		/// <summary>
		/// Designates string comparing to be based on an exact match with the 'pattern' string
		/// </summary>
		Exact				=	5,
	}
}
